package com.qf.service.impl;

import com.qf.client.Myclient;
import com.qf.entity.Cart;
import com.qf.entity.Goods;
import com.qf.mapper.CartMapper;
import com.qf.service.CartService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

//购物车业务逻辑层
@Service
public class CartServiceImpl  implements CartService {

    @Autowired
    private CartMapper cartMapper;
    @Autowired
    private Myclient myclient;

    /**
     * 添加购物车
     * @param cart
     * @return
     */
    @Override
    public int addCart(Cart cart) {
        return cartMapper.addCart(cart);
    }

    /**
     * 根据用户的id和商品的id去购物车查询该用户是否有此商品
     * @param g_id
     * @return
     */
    @Override
    public Cart selByUserIdAndGoodsId(int u_id, int g_id) {
        return cartMapper.selByUserIdAndGoodsId(u_id, g_id);
    }
    /**
     * 根据用户的id和商品的id去购物车修改该用户是否有此商品
     * @return
     */
    @Override
    public int updateByUserIdAndGoodsId(Cart cart1) {

        return cartMapper.updateByUserIdAndGoodsId(cart1);
    }
    /**
     * 根据session中的id信息查询购物车
     * @return
     */
    @Override
    public List<Cart> selByUid(int u_id) {
        return cartMapper.selByUid(u_id);
    }

    /**
     * 远程调用另一个服务
     * @param g_id
     * @return
     */
    @Override
    public Goods selByGoodsId(Integer g_id) {
        return myclient.selByGoodsId(g_id);
    }
}
